package com.weiyuwqj.api.model;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

@Table(name = "bas_coupon")
public class BasCoupon implements Serializable {
    @Id
    private Integer id;

    /**
     * 用户
     */
    @Column(name = "user_id")
    private Integer userId;

    /**
     * 红包名称
     */
    @Column(name = "coupon_name")
    private String couponName;

    /**
     * 优惠券类型 1-红包，2-加息券，3-代金券
     */
    @Column(name = "coupon_type")
    private Integer couponType;

    /**
     * 路径
     */
    private String way;

    /**
     * 金额
     */
    private BigDecimal amount;

    /**
     * 有效时间
     */
    @Column(name = "expired_time")
    private Date expiredTime;

    /**
     * 使用时间
     */
    @Column(name = "use_time")
    private Date useTime;

    /**
     * 状态 1-已使用，2-未使用，3-过期
     */
    private Integer status;

    /**
     * 要求使用的金额
     */
    @Column(name = "require_amount")
    private BigDecimal requireAmount;



    /**
     * 添加时间
     */
    private Date addtime;

    /**
     * 添加ip
     */
    private String addip;

    /**
     * 投资id
     */
    @Column(name = "invest_id")
    private Integer investId;

    /**
     * 债权投资id
     */
    @Column(name = "debt_invest_id")
    private Integer debtInvestId;

    /**
     * 规则id
     */
    @Column(name = "rule_id")
    private Integer ruleId;

    private Integer scope;

    /**
     * @return id
     */
    public Integer getId() {
        return id;
    }

    /**
     * @param id
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 获取用户
     *
     * @return user_id - 用户
     */
    public Integer getUserId() {
        return userId;
    }

    /**
     * 设置用户
     *
     * @param userId 用户
     */
    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    /**
     * 获取红包名称
     *
     * @return coupon_name - 红包名称
     */
    public String getCouponName() {
        return couponName;
    }

    /**
     * 设置红包名称
     *
     * @param couponName 红包名称
     */
    public void setCouponName(String couponName) {
        this.couponName = couponName;
    }

    /**
     * 获取优惠券类型 1-红包，2-加息券，3-代金券
     *
     * @return coupon_type - 优惠券类型 1-红包，2-加息券，3-代金券
     */
    public Integer getCouponType() {
        return couponType;
    }

    /**
     * 设置优惠券类型 1-红包，2-加息券，3-代金券
     *
     * @param couponType 优惠券类型 1-红包，2-加息券，3-代金券
     */
    public void setCouponType(Integer couponType) {
        this.couponType = couponType;
    }

    /**
     * 获取路径
     *
     * @return way - 路径
     */
    public String getWay() {
        return way;
    }

    /**
     * 设置路径
     *
     * @param way 路径
     */
    public void setWay(String way) {
        this.way = way;
    }

    /**
     * 获取金额
     *
     * @return amount - 金额
     */
    public BigDecimal getAmount() {
        return amount;
    }

    /**
     * 设置金额
     *
     * @param amount 金额
     */
    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    /**
     * 获取有效时间
     *
     * @return expired_time - 有效时间
     */
    public Date getExpiredTime() {
        return expiredTime;
    }

    /**
     * 设置有效时间
     *
     * @param expiredTime 有效时间
     */
    public void setExpiredTime(Date expiredTime) {
        this.expiredTime = expiredTime;
    }

    /**
     * 获取使用时间
     *
     * @return use_time - 使用时间
     */
    public Date getUseTime() {
        return useTime;
    }

    /**
     * 设置使用时间
     *
     * @param useTime 使用时间
     */
    public void setUseTime(Date useTime) {
        this.useTime = useTime;
    }

    /**
     * 获取状态 1-已使用，2-未使用，3-过期
     *
     * @return status - 状态 1-已使用，2-未使用，3-过期
     */
    public Integer getStatus() {
        return status;
    }

    /**
     * 设置状态 1-已使用，2-未使用，3-过期
     *
     * @param status 状态 1-已使用，2-未使用，3-过期
     */
    public void setStatus(Integer status) {
        this.status = status;
    }

    /**
     * 获取要求使用的金额
     *
     * @return require_amount - 要求使用的金额
     */
    public BigDecimal getRequireAmount() {
        return requireAmount;
    }

    /**
     * 设置要求使用的金额
     *
     * @param requireAmount 要求使用的金额
     */
    public void setRequireAmount(BigDecimal requireAmount) {
        this.requireAmount = requireAmount;
    }

    /**
     * 获取添加时间
     *
     * @return addtime - 添加时间
     */
    public Date getAddtime() {
        return addtime;
    }

    /**
     * 设置添加时间
     *
     * @param addtime 添加时间
     */
    public void setAddtime(Date addtime) {
        this.addtime = addtime;
    }

    /**
     * 获取添加ip
     *
     * @return addip - 添加ip
     */
    public String getAddip() {
        return addip;
    }

    /**
     * 设置添加ip
     *
     * @param addip 添加ip
     */
    public void setAddip(String addip) {
        this.addip = addip;
    }

    /**
     * 获取投资id
     *
     * @return invest_id - 投资id
     */
    public Integer getInvestId() {
        return investId;
    }

    /**
     * 设置投资id
     *
     * @param investId 投资id
     */
    public void setInvestId(Integer investId) {
        this.investId = investId;
    }

    public Integer getRuleId() {
        return ruleId;
    }

    public void setRuleId(Integer ruleId) {
        this.ruleId = ruleId;
    }

    public Integer getScope() {
        return scope;
    }

    public void setScope(Integer scope) {
        this.scope = scope;
    }

    public Integer getDebtInvestId() {
        return debtInvestId;
    }

    public void setDebtInvestId(Integer debtInvestId) {
        this.debtInvestId = debtInvestId;
    }
}